/*
 * Copyright (C) 2017 Baidu, Inc. All Rights Reserved.
 */
package com.witte.utils;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonParseException;

import java.lang.reflect.Type;

/**
 * Json工具�?.
 */
public class GsonUtils {
    private static Gson gson = new GsonBuilder().create();

    /**
     * 对象转换为json字符串
     * @param value
     * @return
     */
    public static String toJson(Object value) {
        return gson.toJson(value);
    }

    /**
     * json字符串转换为对象
     * @param json
     * @param classOfT
     * @return
     * @throws JsonParseException
     */
    public static <T> T fromJson(String json, Class<T> classOfT) throws JsonParseException {
        return gson.fromJson(json, classOfT);
    }

    /**
     * json字符串转换为对象
     * @param json
     * @param typeOfT
     * @return
     * @throws JsonParseException
     */
    public static <T> T fromJson(String json, Type typeOfT) throws JsonParseException {
        return (T) gson.fromJson(json, typeOfT);
    }
}
